package com.zhang.zxx.boot.common.core.aop;

import org.springframework.core.annotation.AliasFor;

import java.lang.annotation.*;

/**
 * MvcLog:MVC日志注解
 *
 * @author zhangxiaoxiang
 * @date 2021/12/05
 */
@Documented
@Target({ElementType.METHOD})
@Retention(RetentionPolicy.RUNTIME)
public @interface MvcLog {


    /**
     * 需要打印的参数[预估重要参数,因为有些请求参数太长不需要关注的可以忽略]
     *
     * @return 请求参数数组
     */
    String[] params() default {};

    /**
     * 日志描述信息
     *
     * @return 日志描述信息
     */
    @AliasFor("value")
    String description() default "";

    /**
     * 值[和上面互为别名]
     *
     * @return 值
     */
    @AliasFor("description")
    String value() default "";
}
